Симула

Эта статья находится на начальном уровне проработки, в одной из её версий выборочно используется текст из источника, распространяемого под свободной лицензией
Материал из энциклопедии Руниверсалис
Simula 67
Семантика объектно-ориентированный
Тип исполнения компиляция
Появился в 1967
Автор Кристен Нюгор и Оле-Йохан Даль
Система типов статическая
Основные реализации Cim
Испытал влияние Algol-60
Повлиял на C++, BETA

Си́мула-67 (Simula 67) — язык программирования общего назначения, разработанный в конце 1960-х годов сотрудниками Норвежского вычислительного центра (Осло) Кристеном Нюгором и Оле-Йоханом Далем для моделирования сложных систем.

Симула традиционно не считается объектно-ориентированным языком в каноническом смысле этого слова, в частности, создатель языка Smalltalk Алан Кэй имел в виду под этим термином семантику акторов, впервые реализованную в языке Плэнер Карла Хьюитта, а не расширение алголоподобных языков «объектной» нотацией[1].

Стал первым языком со встроенной поддержкой основных синтаксических соглашений, принятых в современных языках объектно-ориентированного программирования. Считается, что язык в значительной степени опередил время, и программисты 1960-х годов оказались не готовы воспринять ценности языка, в связи с чем он не выдержал конкуренции с другими языками программирования. Прохладному отношению к языку способствовало и то обстоятельство, что его реализация была весьма неэффективна, не в последнюю очередь из-за использования сборки мусора.

Тем не менее, этот язык активно использовался в образовательном процессе в высших учебных заведениях, особенно в Скандинавии; о влиянии Симулы на разработку им C++ отмечал его автор — Страуструп (в том числе в книге «Дизайн и эволюция C++»).

В современной терминологии язык можно охарактеризовать как объектное расширение Алгола 60. Конструкции языка очень сходны с аналогичными в современных объектно-ориентированных языках.

Программа «Hello, World»:

Begin
   OutText ("Hello, World!");
   Outimage;
End;

Примечания

  1. Alan Kay's Definition Of Object Oriented Programming. Дата обращения: 24 января 2014. Архивировано 13 августа 2013 года. «I invented the term object-oriented, and I can tell you that C++ wasn’t what I had in mind»

Ссылки